草庐IT

java - 使配置对所有类可用

全部标签

ruby - 用 Ruby 正则表达式中的值替换所有匹配项

我在进行Ruby字符串替换时遇到了问题。我正在为我正在使用的有限语言编写一个预处理器,它本身不支持数组,所以我自己动手。我有一条线:x[0]=x[1]&x[1]=x[2]我想用重新格式化的版本替换每个实例:x__0=x__1&x__1=x__2该行可能在别处包含方括号。我有一个匹配数组用途的正则表达式:array_usage=/(\w+)\[(\d+)\]/但我想不出Ruby构造来逐个替换每个实例。我不能使用.gsub()因为它会匹配行中的每个实例,并将每个数组声明替换为第一个声明。.scan()提示说,如果您尝试在block内使用带有.sub()!的扫描,则字符串正在被修改。如有任何

ruby-on-rails - 用于 Rails 中配置文件完成百分比的 Gem

我正在寻找一个很好的gem来处理注册工作流程的“完成百分比”管理。基本上,我的应用程序只允许用户使用电子邮件和密码进行注册,然后有一个LinkedIn样式的百分比指示器,该指示器会随着添加生日和性别等字段而增加。是否存在可帮助设置这样的流程的好gem?谢谢! 最佳答案 这是一个非常简单(而且很蹩脚)的解决方案的演示:在您的模型中,创建一个包含要完成的字段的数组,以及一个用于存储当前状态的整数字段,例如:classUserProc.new{|u|u.progress_status这样,每次用户更新其个人资料时,百分比都会更新(仅当低于

ruby-on-rails - 有没有办法在 Ruby ERB 模板中列出可用变量?

假设我有一个名为my_template.html.erb的RubyERB模板,它包含以下内容:有没有办法以编程方式列出模板中的所有可用变量?例如下面的方法:deflist_out_variablestemplate=File.open("path_to/my_template.html.erb","rb").readerb=ERB.new(template)erb.this_method_would_list_out_variablesend会返回类似的东西:['div1','div2','div3']如有任何帮助,我们将不胜感激。谢谢,迈克 最佳答案

ruby - 有没有办法计算 ElasticSearch 或 Tire 中索引的所有元素?

如果不必像这样进行搜索就可以对元素进行计数,那就太好了Obj.search("id:*").count这可能吗? 最佳答案 在ElasticSearch中,您可以使用计数API对所有元素进行计数curl-XGEThttp://localhost:9200/index/_count参见CountAPI他们网站上的文档。 关于ruby-有没有办法计算ElasticSearch或Tire中索引的所有元素?,我们在StackOverflow上找到一个类似的问题: ht

arrays - 从 Ruby 中的列表中获取对的所有组合

我有一个元素列表(例如数字),我想检索所有可能对的列表。我如何使用Ruby做到这一点?例子:l1=[1,2,3,4,5]结果:l2#=>[[1,2],[1,3],[1,4],[1,5],[2,3],[2,4],[2,5],[3,4],[3,5],[4,5]] 最佳答案 在Ruby1.8.6中,您可以使用Facets:require'facets/array/combination'i1=[1,2,3,4,5]i2=[]i1.combination(2).to_a#=>[[1,2],[1,3],[1,4],[1,5],[2,3],[2

ruby - 删除所有非单词字符的简单方法

我想使用最简单的方法从字符串中删除所有字符。例如从"a,sd331ds"到"asdds"我想这样做:"a,sd331ds".gsub(/\W/,"").gsub(/\d/,"")#=>"asdds"但是看起来有点别扭。也许可以将这些rexegs合并为一个? 最佳答案 "a,sd331ds".gsub(/(\W|\d)/,"") 关于ruby-删除所有非单词字符的简单方法,我们在StackOverflow上找到一个类似的问题: https://stackover

ruby - irb 中的所有命令都给出 "NoMethodError: undefined method ` write' for nil :NilClass"

我正在尝试从IRB获取当前的ruby​​版本,但它给我这个错误:>>RUBY_VERSIONNoMethodError:undefinedmethod`write'fornil:NilClassfrom/usr/local/lib/ruby/1.9.1/irb.rb:311:in`printf'from/usr/local/lib/ruby/1.9.1/irb.rb:311:in`output_value'from/usr/local/lib/ruby/1.9.1/irb.rb:160:in`block(2levels)ineval_input'from/usr/local/lib/r

ruby-on-rails - 监控 RTMP 流,如果可用则记录

我正在寻找一种方法来监视流上的事件,以便我可以确定是否有任何内容通过流。如果有,我将开始使用rtmpdump进行录制。我想象这是通过运行一个每60秒检查一次流的cron任务来实现的。如果它确定流正在通过,则调用rtmpdump开始记录它。如果没有,则什么都不做,并在60秒后再次检查。由于rtmpdump只是在没有流数据时出现错误,因此尝试使用它来监视流似乎不是一个好主意,但也许我错了。如果我在逐个案例的基础上手动执行此操作会很容易,但我正在尝试自动执行自动录制流的任务(如果它们可用)。有没有人遇到过这样做的方法?也许我可以在命令行(linux)中使用其他一些工具?如果有帮助,我正在使用

ruby-on-rails - OAuth2::Error,invalid_request:redirect_uri 与应用程序配置不匹配

我正在开发一个使用BungieOAuth使用thisgem进行身份验证的Rails应用程序.我在initializers/devise.rb中的配置如下:config.omniauth:bungie,ENV['CLIENT_ID'],ENV['CLIENT_SECRET'],ENV['X_API_KEY'],ENV['REDIRECT_URL']Bungie的开发人员门户需要使用HTTPS的重定向URL,因此我将我的应用程序推送到Heroku并使用了aredirect强制身份验证返回本地主机进行测试。使用这种方法,一切正常。但是,当我将应用程序推向生产环境时,Bungie对我的应用程序

ruby-on-rails - Gemfile 在所有环境中都需要 gem,除了一个

我的Rails应用程序有很多环境:测试、开发、生产、暂存、测试等。我希望为除测试之外的所有环境安装gem'puma'。我怎样才能做到?最简单的方法是制作白名单:gem'puma',group:[:development,:staging,:dev,:production,:testing2]但这似乎太糟糕了,因为这样做会更好:gem'puma',except:[:test]有什么办法吗? 最佳答案 抱歉,没有办法做到这一点。 关于ruby-on-rails-Gemfile在所有环境中都需